﻿
namespace Client.Client_Component
{
    public interface BestellungService
    {
        /// <summary>
        /// Erstellt ein neues Angebot.
        /// </summary>
        /// <param name="angebotDTO">Angebot</param>
        /// <param name="kundennummer">Kundennummer</param>
        /// <param name="bauteilnummer">Bauteilnummer</param>
        void CreateAngebot(AngebotDTO angebotDTO, int kundennummer, int bauteilnummer);

        /// <summary>
        /// Erstellt einen neuen Auftrag aus einem Angebot anhand der Angebotsnummer.
        /// </summary>
        /// <param name="auftragsnummer">Neue Auftragsnummer</param>
        /// <param name="angebotsnummer">Angebotsnummer</param>
        /// <param name="fertigungsauftragsnummer">Fertigungsauftragsnummer</param>
        void CreateAuftrag(int auftragsnummer, int angebotsnummer, int fertigungsauftragsnummer);

        /// <summary>
        /// Löscht ein vorhandenes Angebot.
        /// </summary>
        /// <param name="angebotsnummer">Angebotsnummer</param>
        void DeleteAngebot(int angebotsnummer);

        /// <summary>
        /// Löscht ein vorhandenen Auftrag.
        /// </summary>
        /// <param name="auftragsnummer">Auftragsnummer</param>
        /// <param name="fertigungsauftragsnummer">Fertigungsauftragsnummer</param>
        void DeleteAuftrag(int auftragsnummer, int fertigungsauftragsnummer);
    }
}
